package com.woniuxy.cq.phrase3.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.woniuxy.cq.phrase3.common.Result;
import com.woniuxy.cq.phrase3.entity.Leader;
import com.baomidou.mybatisplus.extension.service.IService;
import com.woniuxy.cq.phrase3.entity.Project;

import java.util.Date;
import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author Lucas
 * @since 2020-09-07
 */
public interface ILeaderService extends IService<Leader> {
    /**
     * 局长查询所有待处理的事项
     * @param leaderId
     * @return
     */
    List<Project> leaderListByChairman(Integer leaderId);

    /**
     * 局长通过审批
     * @param productId
     */
    void chairmanAllow(Integer productId);



    /**
     * 局长直接批准项目
     * @param productId
     */
    void chairmanPass(Integer productId);

    /**
     * 局长直接不批准项目
     * @param productId
     */
    void chairmanFail(Integer productId);
    /**
     * 主任查询所需要处理的事项
     * @param leaderId
     * @return
     */
    List<Project> leaderListByDirector(Integer leaderId);

    /**
     * 主任批准项目
     * @param productId
     */
    void directorAllow(Integer productId);

    /**
     * 主任不批准项目
     * @param productId
     */
    void directorFail(Integer productId);

    /**
     * 主任直接批准项目
     * @param productId
     */
    void directorPass(Integer productId);

    IPage<Project> chairmanPageList(int pageIdx, int pageSize, String projectStatus,String  projectName);

    Result dispacheroperation(Integer leaderId, Integer projectId, String projectStatus);
}
